home *** CD-ROM | disk | FTP | other *** search
/ Aminet 28 / Aminet 28 (1998)(GTI - Schatztruhe)[!][Dec 1998].iso / Aminet / dev / misc / gms_dev.lha / GMSDev / Source / C / Screens / HiResScreen.c < prev    next >
Encoding:
C/C++ Source or Header  |  1998-08-02  |  1.3 KB  |  47 lines

  1. /* Dice: dcc -l0 -mD dpk.o tags.o HiResScreen.c -o HiResScreen
  2. **
  3. ** Opens a screen of 640x256 pixels in HIRES LACED mode.  You can even try
  4. ** SuperHiRes (SHIRES) if you change the appropriate flag in the Screen object.
  5. */
  6.  
  7. #include <proto/dpkernel.h>
  8.  
  9. BYTE *ProgName      = "High-Resolution Screen";
  10. BYTE *ProgAuthor    = "Paul Manias";
  11. BYTE *ProgDate      = "February 1998";
  12. BYTE *ProgCopyright = "DreamWorld Productions (c) 1996-1998.  Freely distributable.";
  13. BYTE *ProgShort     = "High resolution screen display.";
  14.  
  15. void main(void)
  16. {
  17.   struct GScreen  *Screen = NULL;
  18.   struct Picture  *pic = NULL;
  19.   struct JoyData  *joydata = NULL;
  20.   struct FileName PicFile = { ID_FILENAME, "GMSDev:Logos/GMSLogo.iff" };
  21.  
  22.   if (pic = Load(&PicFile, ID_PICTURE)) {
  23.      Screen = Get(ID_SCREEN);
  24.      CopyStructure(pic,Screen);
  25.      Screen->ScrMode = SM_HIRES|SM_LACED;
  26.  
  27.      if (joydata = Init(Get(ID_JOYDATA),NULL)) {
  28.         if (Init(Screen,NULL)) {
  29.  
  30.            Copy(pic->Bitmap,Screen->Bitmap);
  31.  
  32.            Show(Screen);
  33.  
  34.            while (!(joydata->Buttons & JD_LMB)) {
  35.              WaitAVBL();
  36.              Query(joydata);
  37.            }
  38.         }
  39.      }
  40.   }
  41.  
  42.   if (Screen)  { Free(Screen);  Screen  = NULL; }
  43.   if (joydata) { Free(joydata); joydata = NULL; }
  44.   if (pic)     { Free(pic);     pic     = NULL; }
  45. }
  46.  
  47.